/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package fi.ahola.tietorekisteri;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

/**
 * Ilmoitukset-luokka hoitaa popup-ilmoituksien näyttämisen
 *
 * @author f0899
 */
public class Ilmoitukset {

    private JFrame frame;

    /**
     * Luokan konstruktori (tyhjä)
     */
    public Ilmoitukset() {
    }

    /**
     * Metodi näyttää ennalta määritettyjä popupilmoituksia annetun Stringin
     * perusteella
     *
     * @param s Määrittää palautettavan popupilmoituksen
     */
    public void popupIlmoitus(String s) {
        switch (s) {
            case "tiedostoavaus":
                JOptionPane.showMessageDialog(frame, "Tapahtui virhe tiedoston avaamisessa!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "tiedostopurku":
                JOptionPane.showMessageDialog(frame, "Tapahtui virhe tiedoston salauksen purkamisessa!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "tiedostotallennus":
                JOptionPane.showMessageDialog(frame, "Tapahtui virhe tiedoston tallennuksessa!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "hepohukassa":
                JOptionPane.showMessageDialog(frame, "Hevosta ei löytynyt!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "vaarasalasana":
                JOptionPane.showMessageDialog(frame, "Väärä salasana!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "tiedostonluominen":
                JOptionPane.showMessageDialog(frame, "Tapahtui virhe tiedoston luomisessa!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "valitsehevonen":
                JOptionPane.showMessageDialog(frame, "Valitse hevonen listasta!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "maarittamatontietokanta":
                JOptionPane.showMessageDialog(frame, "Maatilaa ei ole määritelty!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
            case "sisainen":
                JOptionPane.showMessageDialog(frame, "Ohjelman sisäinen virhe!" + "\n" + "Korjaa asentamalla ohjelma uudelleen!", "Virhe!", JOptionPane.ERROR_MESSAGE);
                break;
        }
    }

    /**
     * Metodi näyttää popupilmoituksen joka kysyy tallennetaanko muutokset ja
     * palauttaa valinnan integerinä
     *
     * @return Palauttaa arvon 0 mikäli käyttäjä valitsi kyllä ja arvon 1 mikäli
     * valitsi ei
     */
    public int popupTallennetaanko() {
        int talle = -1;
        talle = JOptionPane.showConfirmDialog(frame, "Tallennetaanko muutokset?", "Hevostietorekisteri", JOptionPane.YES_NO_OPTION);
        return talle;
    }

    /**
     * Metodi näyttää popupilmoituksen joka kysyy ladataanko muutokset ja
     * palauttaa valinnan integerinä
     *
     * @return Palauttaa arvon 0 mikäli käyttäjä valitsi kyllä ja arvon 1 mikäli
     * valitsi ei
     */
    public int popupLadataanko() {
        int lada = -1;
        lada = JOptionPane.showConfirmDialog(frame, "Tietokannan lataaminen tiedostosta " + "\n" + "poistaa tallentamattomat muutokset!" + "\n" + "\n" + "Haluatko varmasti ladata tietokannan?", "Hevostietorekisteri", JOptionPane.YES_NO_OPTION);
        return lada;
    }
}
